home *** CD-ROM | disk | FTP | other *** search
/ QuickTime 1.0 for Developers / QuickTime 1.0 for Developers.iso / System Stuff / International QuickTime™ / British / QuickTime™ / QuickTime™.rsrc / CODE_1_Main.txt < prev    next >
Text File  |  1991-09-12  |  27KB  |  483 lines

  1. # near model CODE resource
  2. # jump table entries: 0-0 (1 of them)
  3. export_0:
  4. 00000000  4E56 FF40                link       A6, -0x00C0
  5. 00000004  48E7 0F18                movem.l    -[A7], D4,D5,D6,D7,A3,A4
  6. 00000008  4205                     clr.b      D5
  7. 0000000A  7009                     moveq.l    D0, 0x09
  8. 0000000C  3238 0B22                move.w     D1, [0x00000B22 /* HWCfgFlags */]
  9. 00000010  E061                     asr        D1.w, D0
  10. 00000012  7801                     moveq.l    D4, 0x01
  11. 00000014  C841                     and.w      D4, D1
  12. 00000016  4246                     clr.w      D6
  13. 00000018  41FA FFE6                lea.l      A0, [PC - 0x1A /* 00000000, value 0x4E56FF40 */]
  14. 0000001C  A128                     syscall    RecoverHandle, flags=1
  15. 0000001E  2D48 FFFC                move.l     [A6 - 0x4], A0
  16. 00000022  7002                     moveq.l    D0, 0x02
  17. 00000024  41EE FFEC                lea.l      A0, [A6 - 0x14]
  18. 00000028  A090                     syscall    SysEnvirons
  19. 0000002A  4A40                     tst.w      D0
  20. 0000002C  6600 010E                bne        +0x110 /* 0000013C */
  21. 00000030  0C6E 0600 FFF0           cmpi.w     [A6 - 0x10], 0x600
  22. 00000036  6F00 0104                ble        +0x106 /* 0000013C */
  23. 0000003A  1038 028E                move.b     D0, [0x0000028E /* ROM85 */]
  24. 0000003E  4880                     ext.w      D0
  25. 00000040  323C 00C0                move.w     D1, 0xC0
  26. 00000044  C200                     and.b      D1, D0
  27. 00000046  6706                     beq        +0x8 /* 0000004E */
  28. 00000048  7C03                     moveq.l    D6, 0x03
  29. 0000004A  6000 00F0                bra        +0xF2 /* 0000013C */
  30. label0000004E:
  31. 0000004E  303C AB1D                move.w     D0, 0xAB1D
  32. 00000052  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  33. 00000054  2D48 FF44                move.l     [A6 - 0xBC], A0
  34. 00000058  303C 009F                move.w     D0, 0x9F
  35. 0000005C  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  36. 0000005E  202E FF44                move.l     D0, [A6 - 0xBC]
  37. 00000062  B1C0                     cmpa.l     A0, D0
  38. 00000064  6606                     bne        +0x8 /* 0000006C */
  39. 00000066  7C03                     moveq.l    D6, 0x03
  40. 00000068  6000 00D2                bra        +0xD4 /* 0000013C */
  41. label0000006C:
  42. 0000006C  303C A0AD                move.w     D0, 0xA0AD
  43. 00000070  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  44. 00000072  2D48 FF40                move.l     [A6 - 0xC0], A0
  45. 00000076  303C 009F                move.w     D0, 0x9F
  46. 0000007A  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  47. 0000007C  202E FF40                move.l     D0, [A6 - 0xC0]
  48. 00000080  B1C0                     cmpa.l     A0, D0
  49. 00000082  6606                     bne        +0x8 /* 0000008A */
  50. 00000084  7C04                     moveq.l    D6, 0x04
  51. 00000086  6000 00B4                bra        +0xB6 /* 0000013C */
  52. label0000008A:
  53. 0000008A  558F                     subq.l     A7, 2
  54. 0000008C  2F3C 7174 696D           move.l     -[A7], 0x7174696D /* 'qtim' */
  55. 00000092  486E FFE8                pea.l      [A6 - 0x18]
  56. 00000096  4EBA 0200                jsr        [PC + 0x200 /* 00000298 */]
  57. 0000009A  4A5F                     tst.w      [A7]+
  58. 0000009C  6606                     bne        +0x8 /* 000000A4 */
  59. 0000009E  7C02                     moveq.l    D6, 0x02
  60. 000000A0  6000 009A                bra        +0x9C /* 0000013C */
  61. label000000A4:
  62. 000000A4  558F                     subq.l     A7, 2
  63. 000000A6  2F3C 6370 6E74           move.l     -[A7], 0x63706E74 /* 'cpnt' */
  64. 000000AC  486E FFE8                pea.l      [A6 - 0x18]
  65. 000000B0  4EBA 01E6                jsr        [PC + 0x1E6 /* 00000298 */]
  66. 000000B4  4A5F                     tst.w      [A7]+
  67. 000000B6  6714                     beq        +0x16 /* 000000CC */
  68. 000000B8  7000                     moveq.l    D0, 0x00
  69. 000000BA  2F00                     move.l     -[A7], D0
  70. 000000BC  4EBA 012A                jsr        [PC + 0x12A /* 000001E8 */]
  71. 000000C0  4A40                     tst.w      D0
  72. 000000C2  584F                     addq.w     A7, 4
  73. 000000C4  6704                     beq        +0x6 /* 000000CA */
  74. 000000C6  7C05                     moveq.l    D6, 0x05
  75. 000000C8  6072                     bra        +0x74 /* 0000013C */
  76. label000000CA:
  77. 000000CA  7A01                     moveq.l    D5, 0x01
  78. label000000CC:
  79. 000000CC  558F                     subq.l     A7, 2
  80. 000000CE  2F3C 6963 6D70           move.l     -[A7], 0x69636D70 /* 'icmp' */
  81. 000000D4  486E FFE8                pea.l      [A6 - 0x18]
  82. 000000D8  4EBA 01BE                jsr        [PC + 0x1BE /* 00000298 */]
  83. 000000DC  4A5F                     tst.w      [A7]+
  84. 000000DE  6714                     beq        +0x16 /* 000000F4 */
  85. 000000E0  7001                     moveq.l    D0, 0x01
  86. 000000E2  2F00                     move.l     -[A7], D0
  87. 000000E4  4EBA 0102                jsr        [PC + 0x102 /* 000001E8 */]
  88. 000000E8  4A40                     tst.w      D0
  89. 000000EA  584F                     addq.w     A7, 4
  90. 000000EC  6704                     beq        +0x6 /* 000000F2 */
  91. 000000EE  7C06                     moveq.l    D6, 0x06
  92. 000000F0  604A                     bra        +0x4C /* 0000013C */
  93. label000000F2:
  94. 000000F2  7A01                     moveq.l    D5, 0x01
  95. label000000F4:
  96. 000000F4  4A05                     tst.b      D5
  97. 000000F6  6738                     beq        +0x3A /* 00000130 */
  98. 000000F8  558F                     subq.l     A7, 2
  99. 000000FA  2F3C 7468 6E67           move.l     -[A7], 0x74686E67 /* 'thng' */
  100. 00000100  A80D                     syscall    Count1Resources
  101. 00000102  3E1F                     move.w     D7, [A7]+
  102. 00000104  6026                     bra        +0x28 /* 0000012C */
  103. label00000106:
  104. 00000106  598F                     subq.l     A7, 4
  105. 00000108  2F3C 7468 6E67           move.l     -[A7], 0x74686E67 /* 'thng' */
  106. 0000010E  3F07                     move.w     -[A7], D7
  107. 00000110  A80E                     syscall    Get1IndResource/Get1IxResource
  108. 00000112  285F                     movea.l    A4, [A7]+
  109. 00000114  558F                     subq.l     A7, 2
  110. 00000116  A9AF                     syscall    ResError
  111. 00000118  4A5F                     tst.w      [A7]+
  112. 0000011A  660E                     bne        +0x10 /* 0000012A */
  113. 0000011C  598F                     subq.l     A7, 4
  114. 0000011E  2F0C                     move.l     -[A7], A4
  115. 00000120  7001                     moveq.l    D0, 0x01
  116. 00000122  3F00                     move.w     -[A7], D0
  117. 00000124  7012                     moveq.l    D0, 0x12
  118. 00000126  A82A                     syscall    ComponentDispatch
  119. 00000128  584F                     addq.w     A7, 4
  120. label0000012A:
  121. 0000012A  5347                     subq.w     D7, 1
  122. label0000012C:
  123. 0000012C  4A47                     tst.w      D7
  124. 0000012E  66D6                     bne        -0x28 /* 00000106 */
  125. label00000130:
  126. 00000130  4A05                     tst.b      D5
  127. 00000132  206E FFFC                movea.l    A0, [A6 - 0x4]
  128. 00000136  A02A                     syscall    HUnlock
  129. 00000138  6000 00A4                bra        +0xA6 /* 000001DE */
  130. label0000013C:
  131. 0000013C  4A46                     tst.w      D6
  132. 0000013E  6700 009E                beq        +0xA0 /* 000001DE */
  133. 00000142  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  134. 00000146  A992                     syscall    DetachResource
  135. 00000148  486E FF98                pea.l      [A6 - 0x68]
  136. 0000014C  3F3C 0080                move.w     -[A7], 0x80
  137. 00000150  7001                     moveq.l    D0, 0x01
  138. 00000152  3F00                     move.w     -[A7], D0
  139. 00000154  4EBA 00FC                jsr        [PC + 0xFC /* 00000252 */]
  140. 00000158  486E FF48                pea.l      [A6 - 0xB8]
  141. 0000015C  3F3C 0080                move.w     -[A7], 0x80
  142. 00000160  3F06                     move.w     -[A7], D6
  143. 00000162  4EBA 00EE                jsr        [PC + 0xEE /* 00000252 */]
  144. 00000166  41EE FF48                lea.l      A0, [A6 - 0xB8]
  145. 0000016A  5248                     addq.w     A0, 1
  146. 0000016C  43EE FF98                lea.l      A1, [A6 - 0x68]
  147. 00000170  102E FF98                move.b     D0, [A6 - 0x68]
  148. 00000174  49C0                     lea.l      A4, D0
  149. 00000176  D089                     add.l      D0, A1
  150. 00000178  5280                     addq.l     D0, 1
  151. 0000017A  2240                     movea.l    A1, D0
  152. 0000017C  102E FF48                move.b     D0, [A6 - 0xB8]
  153. 00000180  49C0                     lea.l      A4, D0
  154. 00000182  A02E                     syscall    BlockMove/BlockMoveData
  155. 00000184  102E FF48                move.b     D0, [A6 - 0xB8]
  156. 00000188  D12E FF98                add.b      [A6 - 0x68], D0
  157. 0000018C  102E FF98                move.b     D0, [A6 - 0x68]
  158. 00000190  4880                     ext.w      D0
  159. 00000192  D07C 0026                add.w      D0, 0x26 /* '&' */
  160. 00000196  48C0                     ext.l      D0
  161. 00000198  A71E                     syscall    NewPtrSysClear, flags=7
  162. 0000019A  2648                     movea.l    A3, A0
  163. 0000019C  41EE FF98                lea.l      A0, [A6 - 0x68]
  164. 000001A0  43EB 0024                lea.l      A1, [A3 + 0x24]
  165. 000001A4  102E FF98                move.b     D0, [A6 - 0x68]
  166. 000001A8  4880                     ext.w      D0
  167. 000001AA  5240                     addq.w     D0, 1
  168. 000001AC  48C0                     ext.l      D0
  169. 000001AE  A02E                     syscall    BlockMove/BlockMoveData
  170. 000001B0  70FF                     moveq.l    D0, 0xFFFFFFFF
  171. 000001B2  2740 0014                move.l     [A3 + 0x14], D0
  172. 000001B6  41EB 0024                lea.l      A0, [A3 + 0x24]
  173. 000001BA  2748 0018                move.l     [A3 + 0x18], A0
  174. 000001BE  41FA 0064                lea.l      A0, [PC + 0x64 /* 00000224, value 0x4E560000 'NV\0\0', cstring "NV" */]
  175. 000001C2  2748 001C                move.l     [A3 + 0x1C], A0
  176. 000001C6  276E FFFC 0020           move.l     [A3 + 0x20], [A6 - 0x4]
  177. 000001CC  377C 0008 0004           move.w     [A3 + 0x4], 0x8
  178. 000001D2  558F                     subq.l     A7, 2
  179. 000001D4  2F0B                     move.l     -[A7], A3
  180. 000001D6  205F                     movea.l    A0, [A7]+
  181. 000001D8  A05E                     syscall    NMInstall
  182. 000001DA  3E80                     move.w     [A7], D0
  183. 000001DC  544F                     addq.w     A7, 2
  184. label000001DE:
  185. 000001DE  4CEE 18F0 FF28           movem.l    D4,D5,D6,D7,A3,A4, [A6 - 0xD8]
  186. 000001E4  4E5E                     unlink     A6
  187. 000001E6  4E75                     rts
  188. fn000001E8:
  189. 000001E8  4E56 0000                link       A6, 0
  190. 000001EC  2F0C                     move.l     -[A7], A4
  191. 000001EE  598F                     subq.l     A7, 4
  192. 000001F0  2F3C 696E 7374           move.l     -[A7], 0x696E7374 /* 'inst' */
  193. 000001F6  3F2E 000A                move.w     -[A7], [A6 + 0xA]
  194. 000001FA  A81F                     syscall    Get1Resource
  195. 000001FC  285F                     movea.l    A4, [A7]+
  196. 000001FE  200C                     move.l     D0, A4
  197. 00000200  6714                     beq        +0x16 /* 00000216 */
  198. 00000202  558F                     subq.l     A7, 2
  199. 00000204  A9AF                     syscall    ResError
  200. 00000206  4A5F                     tst.w      [A7]+
  201. 00000208  660C                     bne        +0xE /* 00000216 */
  202. 0000020A  204C                     movea.l    A0, A4
  203. 0000020C  A029                     syscall    HLock
  204. 0000020E  2054                     movea.l    A0, [A4]
  205. 00000210  4E90                     jsr        [A0]
  206. 00000212  2F0C                     move.l     -[A7], A4
  207. 00000214  A9A3                     syscall    ReleaseResource
  208. label00000216:
  209. 00000216  558F                     subq.l     A7, 2
  210. 00000218  A9AF                     syscall    ResError
  211. 0000021A  301F                     move.w     D0, [A7]+
  212. 0000021C  286E FFFC                movea.l    A4, [A6 - 0x4]
  213. 00000220  4E5E                     unlink     A6
  214. 00000222  4E75                     rts
  215. 00000224  4E56 0000                link       A6, 0
  216. 00000228  48E7 0018                movem.l    -[A7], A3,A4
  217. 0000022C  286E 0008                movea.l    A4, [A6 + 0x8]
  218. 00000230  266C 0020                movea.l    A3, [A4 + 0x20]
  219. 00000234  558F                     subq.l     A7, 2
  220. 00000236  2F0C                     move.l     -[A7], A4
  221. 00000238  205F                     movea.l    A0, [A7]+
  222. 0000023A  A05F                     syscall    NMRemove
  223. 0000023C  3E80                     move.w     [A7], D0
  224. 0000023E  204C                     movea.l    A0, A4
  225. 00000240  A01F                     syscall    DisposPtr/DisposePtr
  226. 00000242  204B                     movea.l    A0, A3
  227. 00000244  A02A                     syscall    HUnlock
  228. 00000246  4CEE 1800 FFF8           movem.l    A3,A4, [A6 - 0x8]
  229. 0000024C  4E5E                     unlink     A6
  230. 0000024E  4E74 0004                rtd        0x0004
  231. fn00000252:
  232. 00000252  4E56 0000                link       A6, 0
  233. 00000256  594F                     subq.w     A7, 4
  234. 00000258  2F3C 5354 5223           move.l     -[A7], 0x53545223 /* 'STR#' */
  235. 0000025E  3F2E 000A                move.w     -[A7], [A6 + 0xA]
  236. 00000262  A9A0                     syscall    GetResource
  237. 00000264  226E 000C                movea.l    A1, [A6 + 0xC]
  238. 00000268  4211                     clr.b      [A1]
  239. 0000026A  201F                     move.l     D0, [A7]+
  240. 0000026C  6722                     beq        +0x24 /* 00000290 */
  241. 0000026E  2040                     movea.l    A0, D0
  242. 00000270  2050                     movea.l    A0, [A0]
  243. 00000272  3018                     move.w     D0, [A0]+
  244. 00000274  322E 0008                move.w     D1, [A6 + 0x8]
  245. 00000278  6716                     beq        +0x18 /* 00000290 */
  246. 0000027A  B240                     cmp.w      D1, D0
  247. 0000027C  6212                     bhi        +0x14 /* 00000290 */
  248. 0000027E  7000                     moveq.l    D0, 0x00
  249. label00000280:
  250. 00000280  5341                     subq.w     D1, 1
  251. 00000282  6706                     beq        +0x8 /* 0000028A */
  252. 00000284  1018                     move.b     D0, [A0]+
  253. 00000286  D1C0                     add.l      A0, D0
  254. 00000288  60F6                     bra        -0x8 /* 00000280 */
  255. label0000028A:
  256. 0000028A  1010                     move.b     D0, [A0]
  257. 0000028C  5240                     addq.w     D0, 1
  258. 0000028E  A02E                     syscall    BlockMove/BlockMoveData
  259. label00000290:
  260. 00000290  4E5E                     unlink     A6
  261. 00000292  205F                     movea.l    A0, [A7]+
  262. 00000294  508F                     addq.l     A7, 8
  263. 00000296  4ED0                     jmp        [A0]
  264. fn00000298:
  265. 00000298  4E56 0000                link       A6, 0
  266. 0000029C  203C 0000 A89F           move.l     D0, 0xA89F
  267. 000002A2  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  268. 000002A4  2F08                     move.l     -[A7], A0
  269. 000002A6  203C 0000 A0AD           move.l     D0, 0xA0AD
  270. 000002AC  A346                     syscall    GetOSTrapAddress, flags=3
  271. 000002AE  B1DF                     cmpa.l     A0, [A7]+
  272. 000002B0  670E                     beq        +0x10 /* 000002C0 */
  273. 000002B2  202E 000C                move.l     D0, [A6 + 0xC]
  274. 000002B6  A1AD                     syscall    Gestalt, flags=1
  275. 000002B8  226E 0008                movea.l    A1, [A6 + 0x8]
  276. 000002BC  2288                     move.l     [A1], A0
  277. 000002BE  6026                     bra        +0x28 /* 000002E6 */
  278. label000002C0:
  279. 000002C0  41FA 0036                lea.l      A0, [PC + 0x36 /* 000002F8, value 0x76657273 'vers', cstring "vers" */]
  280. 000002C4  303C EA51                move.w     D0, 0xEA51
  281. 000002C8  222E 000C                move.l     D1, [A6 + 0xC]
  282. label000002CC:
  283. 000002CC  B298                     cmp.l      D1, [A0]+
  284. 000002CE  6706                     beq        +0x8 /* 000002D6 */
  285. 000002D0  4A98                     tst.l      [A0]+
  286. 000002D2  6712                     beq        +0x14 /* 000002E6 */
  287. 000002D4  60F6                     bra        -0x8 /* 000002CC */
  288. label000002D6:
  289. 000002D6  43FA 0020                lea.l      A1, [PC + 0x20 /* 000002F8, value 0x76657273 'vers', cstring "vers" */]
  290. 000002DA  D3D0                     add.l      A1, [A0]
  291. 000002DC  4ED1                     jmp        [A1]
  292. label000002DE:
  293. 000002DE  226E 0008                movea.l    A1, [A6 + 0x8]
  294. 000002E2  2280                     move.l     [A1], D0
  295. 000002E4  4240                     clr.w      D0
  296. label000002E6:
  297. 000002E6  3D40 0010                move.w     [A6 + 0x10], D0
  298. 000002EA  4E5E                     unlink     A6
  299. 000002EC  205F                     movea.l    A0, [A7]+
  300. 000002EE  508F                     addq.l     A7, 8
  301. 000002F0  4ED0                     jmp        [A0]
  302. label000002F2:
  303. 000002F2  303C EA52                move.w     D0, 0xEA52
  304. 000002F6  60EE                     bra        -0x10 /* 000002E6 */
  305. 000002F8  7665                     moveq.l    D3, 0x65
  306. 000002FA  7273                     moveq.l    D1, 0x73
  307. 000002FC  0000 0060                ori.b      D0, 0x60 /* '`' */
  308. 00000300  6D61                     blt        +0x63 /* 00000363 */
  309. 00000302  6368                     bls        +0x6A /* 0000036C */
  310. 00000304  0000 0064                ori.b      D0, 0x64 /* 'd' */
  311. 00000308  7379                     moveq.l    D1, 0x79
  312. 0000030A  7376                     moveq.l    D1, 0x76
  313. 0000030C  0000 0088                ori.b      D0, 0x88
  314. 00000310  7072                     moveq.l    D0, 0x72
  315. 00000312  6F63                     ble        +0x65 /* 00000377 */
  316. 00000314  0000 0092                ori.b      D0, 0x92
  317. 00000318  6670                     bne        +0x72 /* 0000038A */
  318. 0000031A  7520                     moveq.l    D2, 0x20
  319. 0000031C  0000 009E                ori.b      D0, 0x9E
  320. 00000320  7164                     moveq.l    D0, 0x64
  321. 00000322  2020                     move.l     D0, -[A0]
  322. 00000324  0000 00E8                ori.b      D0, 0xE8
  323. 00000328  6B62                     bmi        +0x64 /* 0000038C */
  324. 0000032A  6420                     bcc        +0x22 /* 0000034C */
  325. 0000032C  0000 011A                ori.b      D0, 0x1A
  326. 00000330  6174                     bsr        +0x76 /* 000003A6 */
  327. 00000332  6C6B                     bge        +0x6D /* 0000039F */
  328. 00000334  0000 0142                ori.b      D0, 0x42 /* 'B' */
  329. 00000338  6D6D                     blt        +0x6F /* 000003A7 */
  330. 0000033A  7520                     moveq.l    D2, 0x20
  331. 0000033C  0000 0164                ori.b      D0, 0x64 /* 'd' */
  332. 00000340  7261                     moveq.l    D1, 0x61
  333. 00000342  6D20                     blt        +0x22 /* 00000364 */
  334. 00000344  0000 0188                ori.b      D0, 0x88
  335. 00000348  6C72                     bge        +0x74 /* 000003BC */
  336. 0000034A  616D                     bsr        +0x6F /* 000003B9 */
  337. label0000034C:
  338. 0000034C  0000 0188                ori.b      D0, 0x88
  339. 00000350  0000 0000                ori.b      D0, 0x0
  340. 00000354  0000 0000                ori.b      D0, 0x0
  341. 00000358  7001                     moveq.l    D0, 0x01
  342. 0000035A  6082                     bra        -0x7C /* 000002DE */
  343. 0000035C  2278 02AE                movea.l    A1, [0x000002AE /* ROMBase */]
  344. 00000360  7004                     moveq.l    D0, 0x04
  345. 00000362  0C69 0075 0008           cmpi.w     [A1 + 0x8], 0x75 /* 'u' */
  346. // begin alternate branch 00000364-0000036C
  347. label00000364:
  348. 00000364  0075 0008 6712 0C69      ori.w      [[A5 + D6 * 8] + 0xC69], 0x8
  349. // end alternate branch 00000364-0000036C
  350. label00000364: // (misaligned)
  351. 00000368  6712                     beq        +0x14 /* 0000037C */
  352. 0000036A  0C69 0276 0008           cmpi.w     [A1 + 0x8], 0x276
  353. // begin alternate branch 0000036C-00000372
  354. label0000036C:
  355. 0000036C  0276 0008 6604           andi.w     [A6 + D6.w * 8 + 0x4], 0x8
  356. // end alternate branch 0000036C-00000372
  357. label0000036C: // (misaligned)
  358. 00000370  6604                     bne        +0x6 /* 00000376 */
  359. 00000372  5240                     addq.w     D0, 1
  360. 00000374  6006                     bra        +0x8 /* 0000037C */
  361. label00000376:
  362. 00000376  1038 0CB3                move.b     D0, [0x00000CB3 /* MMUFluff/MachineType */]
  363. 0000037A  5C80                     addq.l     D0, 6
  364. label0000037C:
  365. 0000037C  6000 FF60                bra        -0x9E /* 000002DE */
  366. 00000380  7000                     moveq.l    D0, 0x00
  367. 00000382  3038 015A                move.w     D0, [0x0000015A /* SysVersion */]
  368. 00000386  6000 FF56                bra        -0xA8 /* 000002DE */
  369. label0000038A:
  370. 0000038A  7000                     moveq.l    D0, 0x00
  371. label0000038C:
  372. 0000038C  1038 012F                move.b     D0, [0x0000012F /* CPUFlag */]
  373. 00000390  5240                     addq.w     D0, 1
  374. 00000392  6000 FF4A                bra        -0xB4 /* 000002DE */
  375. 00000396  0C38 0004 012F           cmpi.b     [0x0000012F /* CPUFlag */], 0x4
  376. 0000039C  6738                     beq        +0x3A /* 000003D6 */
  377. 0000039E  0838 0004 0B22           btst.b     [0x00000B22 /* HWCfgFlags */], 0x4
  378. 000003A4  6734                     beq        +0x36 /* 000003DA */
  379. fn000003A6:
  380. 000003A6  204F                     movea.l    A0, A7
  381. 000003A8  F280 0000                fnop
  382. 000003AC  F327                     .extension 0x327 <<F/4-5/1>> // unimplemented
  383. 000003AE  3017                     move.w     D0, [A7]
  384. 000003B0  2E48                     movea.l    A7, A0
  385. 000003B2  0C40 1F18                cmpi.w     D0, 0x1F18
  386. 000003B6  6716                     beq        +0x18 /* 000003CE */
  387. 000003B8  0C40 3F18                cmpi.w     D0, 0x3F18
  388. label000003BC:
  389. 000003BC  6710                     beq        +0x12 /* 000003CE */
  390. 000003BE  0C40 3F38                cmpi.w     D0, 0x3F38 /* '?8' */
  391. 000003C2  670E                     beq        +0x10 /* 000003D2 */
  392. 000003C4  0C40 1F38                cmpi.w     D0, 0x1F38
  393. 000003C8  6708                     beq        +0xA /* 000003D2 */
  394. 000003CA  7000                     moveq.l    D0, 0x00
  395. 000003CC  600E                     bra        +0x10 /* 000003DC */
  396. label000003CE:
  397. 000003CE  7001                     moveq.l    D0, 0x01
  398. 000003D0  600A                     bra        +0xC /* 000003DC */
  399. label000003D2:
  400. 000003D2  7002                     moveq.l    D0, 0x02
  401. 000003D4  6006                     bra        +0x8 /* 000003DC */
  402. label000003D6:
  403. 000003D6  7003                     moveq.l    D0, 0x03
  404. 000003D8  6002                     bra        +0x4 /* 000003DC */
  405. label000003DA:
  406. 000003DA  7000                     moveq.l    D0, 0x00
  407. label000003DC:
  408. 000003DC  6000 FF00                bra        -0xFE /* 000002DE */
  409. 000003E0  0C78 3FFF 028E           cmpi.w     [0x0000028E /* ROM85 */], 0x3FFF
  410. 000003E6  6E1C                     bgt        +0x1E /* 00000404 */
  411. 000003E8  303C A89F                move.w     D0, 0xA89F
  412. 000003EC  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  413. 000003EE  2408                     move.l     D2, A0
  414. 000003F0  203C 0000 AB03           move.l     D0, 0xAB03
  415. 000003F6  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  416. 000003F8  203C 0000 0100           move.l     D0, 0x100
  417. 000003FE  B488                     cmp.l      D2, A0
  418. 00000400  6606                     bne        +0x8 /* 00000408 */
  419. 00000402  600A                     bra        +0xC /* 0000040E */
  420. label00000404:
  421. 00000404  7000                     moveq.l    D0, 0x00
  422. 00000406  6006                     bra        +0x8 /* 0000040E */
  423. label00000408:
  424. 00000408  203C 0000 0200           move.l     D0, 0x200
  425. label0000040E:
  426. 0000040E  6000 FECE                bra        -0x130 /* 000002DE */
  427. 00000412  1038 021E                move.b     D0, [0x0000021E /* KbdType */]
  428. 00000416  41FA 0016                lea.l      A0, [PC + 0x16 /* 0000042E, value 0x3130B02 */]
  429. 0000041A  2248                     movea.l    A1, A0
  430. label0000041C:
  431. 0000041C  1218                     move.b     D1, [A0]+
  432. 0000041E  6700 FED2                beq        -0x12C /* 000002F2 */
  433. 00000422  B200                     cmp.b      D1, D0
  434. 00000424  66F6                     bne        -0x8 /* 0000041C */
  435. 00000426  91C9                     sub.l      A0, A1
  436. 00000428  2008                     move.l     D0, A0
  437. 0000042A  6000 FEB2                bra        -0x14C /* 000002DE */
  438. 0000042E  0313                     btst       [A3], D1
  439. 00000430  0B02                     btst       D2, D5
  440. 00000432  0106                     btst       D6, D0
  441. 00000434  0704                     btst       D4, D3
  442. 00000436  0508                     btst       A0, D2
  443. 00000438  0900                     btst       D0, D4
  444. 0000043A  7000                     moveq.l    D0, 0x00
  445. 0000043C  4A38 0291                tst.b      [0x00000291 /* PortBUse */]
  446. 00000440  6B16                     bmi        +0x18 /* 00000458 */
  447. 00000442  1238 01FB                move.b     D1, [0x000001FB /* SPConfig */]
  448. 00000446  0201 000F                andi.b     D1, 0xF
  449. 0000044A  0C01 0001                cmpi.b     D1, 0x1
  450. 0000044E  6608                     bne        +0xA /* 00000458 */
  451. 00000450  2078 02DC                movea.l    A0, [0x000002DC /* ABusDCE */]
  452. 00000454  1028 0007                move.b     D0, [A0 + 0x7]
  453. label00000458:
  454. 00000458  6000 FE84                bra        -0x17A /* 000002DE */
  455. 0000045C  0C38 0002 012F           cmpi.b     [0x0000012F /* CPUFlag */], 0x2
  456. 00000462  6D16                     blt        +0x18 /* 0000047A */
  457. 00000464  7000                     moveq.l    D0, 0x00
  458. 00000466  1038 0CB1                move.b     D0, [0x00000CB1 /* MMUType */]
  459. 0000046A  0C00 0001                cmpi.b     D0, 0x1
  460. 0000046E  670C                     beq        +0xE /* 0000047C */
  461. 00000470  0C00 0003                cmpi.b     D0, 0x3
  462. 00000474  6D04                     blt        +0x6 /* 0000047A */
  463. 00000476  5340                     subq.w     D0, 1
  464. 00000478  6002                     bra        +0x4 /* 0000047C */
  465. label0000047A:
  466. 0000047A  7000                     moveq.l    D0, 0x00
  467. label0000047C:
  468. 0000047C  6000 FE60                bra        -0x19E /* 000002DE */
  469. 00000480  303C A89F                move.w     D0, 0xA89F
  470. 00000484  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  471. 00000486  2408                     move.l     D2, A0
  472. 00000488  203C 0000 A88F           move.l     D0, 0xA88F
  473. 0000048E  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  474. 00000490  2038 0108                move.l     D0, [0x00000108 /* MemTop */]
  475. 00000494  B488                     cmp.l      D2, A0
  476. 00000496  670A                     beq        +0xC /* 000004A2 */
  477. 00000498  598F                     subq.l     A7, 4
  478. 0000049A  3F3C 0016                move.w     -[A7], 0x16
  479. 0000049E  A88F                     syscall    OSDispatch
  480. 000004A0  201F                     move.l     D0, [A7]+
  481. label000004A2:
  482. 000004A2  6000 FE3A                bra        -0x1C4 /* 000002DE */
  483.